package com.xpsoft.oa.model.project;


import java.util.Date;
import java.util.HashSet;
import java.util.Set;

import com.google.gson.annotations.Expose;
import com.xpsoft.oa.model.system.AppUser;
import com.xpsoft.oa.model.system.FileAttach;

/**
 * ProjectRegister Base Java Bean, base class for the.oa.model, mapped directly to database table
 * 
 * Avoid changing this file if not necessary, will be overwritten. 
 *
 * TODO: add class/table comments
 */
public class ProjectRegister extends com.xpsoft.core.model.BaseModel {
	@Expose
    protected Long id;  
	@Expose
	protected String proName;
	@Expose
	protected AppUser businesser;
	@Expose
	protected String businessSource;
	@Expose
	protected String bidUnit;
	@Expose
	protected String props;
	@Expose
	protected String moneyProps;
	@Expose
	protected String proArea;
	@Expose
	protected java.math.BigDecimal preAmount;
	@Expose
	protected java.util.Date preDuration;
	@Expose
	protected Date preDurationEnd;
	@Expose
	protected String quality;
	@Expose
	protected String useArea;
	@Expose
	protected String bidType;
	@Expose
	protected String humanRelations;
	@Expose
	protected String winBidProbability;
	@Expose
	protected AppUser techBidMaker;
	@Expose
	protected AppUser economicBidMaker;
	@Expose
	protected java.util.Date endBidDate;
	@Expose
	protected java.math.BigDecimal bidDeposit;
	@Expose
	protected java.util.Date registDate;
	@Expose
	protected String remark;
	@Expose
	protected Integer status; // 0默认为等待状态、1已中标、2未中标、3弃标
	@Expose
	protected Long processRunId;
	@Expose
	protected String proRegisterTitle;
	@Expose
	protected Set<FileAttach> fileAttachs = new HashSet<FileAttach>();

	/**
	 * Default Empty Constructor for class ProjectRegister
	 */
	public ProjectRegister () {
		super();
	}
	
	/**
	 * Default Key Fields Constructor for class ProjectRegister
	 */
	public ProjectRegister (
		 Long in_id
        ) {
		this.setId(in_id);
    }

    

	/**
	 * 	 * @return Long
     * @hibernate.id column="id" type="java.lang.Long" generator-class="native"
	 */
	public Long getId() {
		return this.id;
	}
	
	/**
	 * Set the id
	 */	
	public void setId(Long aValue) {
		this.id = aValue;
	}	

	public Long getProcessRunId() {
		return processRunId;
	}

	public void setProcessRunId(Long processRunId) {
		this.processRunId = processRunId;
	}

	public String getProRegisterTitle() {
		return proRegisterTitle;
	}

	public void setProRegisterTitle(String proRegisterTitle) {
		this.proRegisterTitle = proRegisterTitle;
	}

	/**
	 * 工程名称	 * @return String
	 * @hibernate.property column="proName" type="java.lang.String" length="128" not-null="false" unique="false"
	 */
	public String getProName() {
		return this.proName;
	}
	
	/**
	 * Set the proName
	 */	
	public void setProName(String aValue) {
		this.proName = aValue;
	}	


	/**
	 * 业务来源	 * @return String
	 * @hibernate.property column="businessSource" type="java.lang.String" length="128" not-null="false" unique="false"
	 */
	public String getBusinessSource() {
		return this.businessSource;
	}
	
	/**
	 * Set the businessSource
	 */	
	public void setBusinessSource(String aValue) {
		this.businessSource = aValue;
	}	

	/**
	 * 招标单位	 * @return String
	 * @hibernate.property column="bidUnit" type="java.lang.String" length="128" not-null="false" unique="false"
	 */
	public String getBidUnit() {
		return this.bidUnit;
	}
	
	/**
	 * Set the bidUnit
	 */	
	public void setBidUnit(String aValue) {
		this.bidUnit = aValue;
	}	

	/**
	 * 项目属性	 * @return String
	 * @hibernate.property column="props" type="java.lang.String" length="128" not-null="false" unique="false"
	 */
	public String getProps() {
		return this.props;
	}
	
	/**
	 * Set the props
	 */	
	public void setProps(String aValue) {
		this.props = aValue;
	}	

	/**
	 * 筹资属性	 * @return String
	 * @hibernate.property column="moneyProps" type="java.lang.String" length="128" not-null="false" unique="false"
	 */
	public String getMoneyProps() {
		return this.moneyProps;
	}
	
	/**
	 * Set the moneyProps
	 */	
	public void setMoneyProps(String aValue) {
		this.moneyProps = aValue;
	}	

	/**
	 * 项目所在地	 * @return String
	 * @hibernate.property column="proArea" type="java.lang.String" length="128" not-null="false" unique="false"
	 */
	public String getProArea() {
		return this.proArea;
	}
	
	/**
	 * Set the proArea
	 */	
	public void setProArea(String aValue) {
		this.proArea = aValue;
	}	

	/**
	 * 预计产值（万元）	 * @return java.math.BigDecimal
	 * @hibernate.property column="preAmount" type="java.math.BigDecimal" length="10" not-null="false" unique="false"
	 */
	public java.math.BigDecimal getPreAmount() {
		return this.preAmount;
	}
	
	/**
	 * Set the preAmount
	 */	
	public void setPreAmount(java.math.BigDecimal aValue) {
		this.preAmount = aValue;
	}	

	/**
	 * 预计工期	 * @return java.util.Date
	 * @hibernate.property column="preDuration" type="java.util.Date" length="19" not-null="false" unique="false"
	 */
	public java.util.Date getPreDuration() {
		return this.preDuration;
	}
	
	/**
	 * Set the preDuration
	 */	
	public void setPreDuration(java.util.Date aValue) {
		this.preDuration = aValue;
	}	

	/**
	 * 质量要求	 * @return String
	 * @hibernate.property column="quality" type="java.lang.String" length="128" not-null="false" unique="false"
	 */
	public String getQuality() {
		return this.quality;
	}
	
	/**
	 * Set the quality
	 */	
	public void setQuality(String aValue) {
		this.quality = aValue;
	}	

	/**
	 * 使用面积（平方）	 * @return String
	 * @hibernate.property column="useArea" type="java.lang.String" length="128" not-null="false" unique="false"
	 */
	public String getUseArea() {
		return this.useArea;
	}
	
	/**
	 * Set the useArea
	 */	
	public void setUseArea(String aValue) {
		this.useArea = aValue;
	}	

	/**
	 * 招标方式	 * @return String
	 * @hibernate.property column="bidType" type="java.lang.String" length="128" not-null="false" unique="false"
	 */
	public String getBidType() {
		return this.bidType;
	}
	
	/**
	 * Set the bidType
	 */	
	public void setBidType(String aValue) {
		this.bidType = aValue;
	}	

	/**
	 * 人脉关系	 * @return String
	 * @hibernate.property column="humanRelations" type="java.lang.String" length="128" not-null="false" unique="false"
	 */
	public String getHumanRelations() {
		return this.humanRelations;
	}
	
	/**
	 * Set the humanRelations
	 */	
	public void setHumanRelations(String aValue) {
		this.humanRelations = aValue;
	}	

	/**
	 * 中标几率	 * @return String
	 * @hibernate.property column="winBidProbability" type="java.lang.String" length="128" not-null="false" unique="false"
	 */
	public String getWinBidProbability() {
		return this.winBidProbability;
	}
	
	public Date getPreDurationEnd() {
		return preDurationEnd;
	}

	public void setPreDurationEnd(Date preDurationEnd) {
		this.preDurationEnd = preDurationEnd;
	}

	/**
	 * Set the winBidProbability
	 */	
	public void setWinBidProbability(String aValue) {
		this.winBidProbability = aValue;
	}	


	/**
	 * 投标截止日期	 * @return java.util.Date
	 * @hibernate.property column="endBidDate" type="java.util.Date" length="19" not-null="false" unique="false"
	 */
	public java.util.Date getEndBidDate() {
		return this.endBidDate;
	}
	
	/**
	 * Set the endBidDate
	 */	
	public void setEndBidDate(java.util.Date aValue) {
		this.endBidDate = aValue;
	}	

	/**
	 * 投标保证金	 * @return java.math.BigDecimal
	 * @hibernate.property column="bidDeposit" type="java.math.BigDecimal" length="10" not-null="false" unique="false"
	 */
	public java.math.BigDecimal getBidDeposit() {
		return this.bidDeposit;
	}
	
	/**
	 * Set the bidDeposit
	 */	
	public void setBidDeposit(java.math.BigDecimal aValue) {
		this.bidDeposit = aValue;
	}	

	/**
	 * 登记日期	 * @return java.util.Date
	 * @hibernate.property column="registDate" type="java.util.Date" length="19" not-null="false" unique="false"
	 */
	public java.util.Date getRegistDate() {
		return this.registDate;
	}
	
	/**
	 * Set the registDate
	 */	
	public void setRegistDate(java.util.Date aValue) {
		this.registDate = aValue;
	}	

	/**
	 * 备注	 * @return String
	 * @hibernate.property column="remark" type="java.lang.String" length="65535" not-null="false" unique="false"
	 */
	public String getRemark() {
		return this.remark;
	}
	
	/**
	 * Set the remark
	 */	
	public void setRemark(String aValue) {
		this.remark = aValue;
	}	

	/**
	 * 项目状态（已中标、未中标、弃标、等待，默认为等待状态）	 * @return Integer
	 * @hibernate.property column="status" type="java.lang.Integer" length="10" not-null="false" unique="false"
	 */
	public Integer getStatus() {
		return this.status;
	}
	
	/**
	 * Set the status
	 */	
	public void setStatus(Integer aValue) {
		this.status = aValue;
	}

	public AppUser getBusinesser() {
		return businesser;
	}

	public void setBusinesser(AppUser businesser) {
		this.businesser = businesser;
	}

	public AppUser getTechBidMaker() {
		return techBidMaker;
	}

	public void setTechBidMaker(AppUser techBidMaker) {
		this.techBidMaker = techBidMaker;
	}

	public AppUser getEconomicBidMaker() {
		return economicBidMaker;
	}

	public void setEconomicBidMaker(AppUser economicBidMaker) {
		this.economicBidMaker = economicBidMaker;
	}

	public Set<FileAttach> getFileAttachs() {
		return fileAttachs;
	}

	public void setFileAttachs(Set<FileAttach> fileAttachs) {
		this.fileAttachs = fileAttachs;
	}	
}
